#ifndef __VIMOCK_INVOCATION__
#define __VIMOCK_INVOCATION__

#include <memory>
#include <vector>
#include "object.hpp"

namespace vimock {
class _invocation {
public:
	_invocation(
		object obj, 
		object func, 
		object_vector args);
	object get_object() const;
	object get_function() const;
	object_vector get_arguments() const;
private:
	object obj;
	object func;
	object_vector args;
};
typedef std::tr1::shared_ptr<_invocation> invocation;
}

#endif //__VIMOCK_INVOCATION__ 
